টেক্সট সংরক্ষন এবং সেগুলো নিয়ে কাজ করার জন্য জাভাস্ক্রিপ্টে স্ট্রিং ব্যবহার করা হয়।
জাভাস্ক্রিপ্টে স্ট্রিং সাধারণত কিছু ক্যারেক্টারকে জমা রাখে।যেমন "Tamjid Hasan"।
একটি স্ট্রিং হলো উদ্ধৃতি চিহ্নের মাঝে যেকোন ধরনের টেক্সট। আপনি সিঙ্গেল বা ডাবল কোটেশন(উদ্ধৃতি চিহ্ন) ব্যবহার করতে পারেনঃ
kt_satt_skill_example_id=800
আপনি একটি স্ট্রিং ভিতরে উদ্ধৃতি চিহ্ন ব্যবহার করতে পারেন কিন্তু লক্ষ্য রাখতে হবে তার পার্শ্ববর্তী স্ট্রিংয়ের উদ্ধৃতি চিহ্নের সাথে না মিলেঃ
kt_satt_skill_example_id=802
একটি স্ট্রিংয়ের দৈর্ঘ্য স্ট্রিংয়ের বিল্ট-ইন length প্রোপার্টির মাধ্যমে পাওয়া যায়ঃ
kt_satt_skill_example_id=803
যেহেতু স্ট্রিংকে উদ্ধৃতির মধ্যে লেখা আবশ্যক, তাই জাভাস্ক্রিপ্ট নিচের স্ট্রিংকে ভুলভাবে পড়বেঃ
kt_satt_skill_example_id=804
স্ট্রিংটি "Welcome To" পযর্ন্ত নেওয়া হবে।
এই সমস্যা এড়ানোর জন্য আমরা \ চিহ্নটি ব্যবহার করবো।
স্ট্রিংয়ের মধ্যে বিশেষ অক্ষর ব্যবহার করতে চাইলে আপনাকে ব্যাকস্ল্যাশ(\) ব্যবহার করতে হবেঃ
kt_satt_skill_example_id=807
স্ট্রিংয়ের মধ্যে অন্যান্য স্পেশাল ক্যারেক্টার ব্যবহার করতেও \ ব্যবহার করা হয়।
টেক্সট স্ট্রিং-এ ব্যাকস্ল্যাশ(backslash) ব্যবহার করে নিচের স্পেশাল ক্যারেক্টারগুলো তৈরি করা যায়ঃ
কোড | ফলাফল |
---|---|
\' | সিঙ্গেল কোটেশন |
\" | ডাবল কোটেশন |
\\ | ব্যাকস্ল্যাশ |
\n | নতুন লাইন |
\r | নতুন লাইন তৈরি করার মতই |
\t | ট্যাব |
\b | ব্যাকস্পেস |
\f | ফর্ম ফিড |
পড়ার সুবিধার জন্য প্রোগ্রামাররা ৮০ ক্যারেক্টারের বড় লাইনকে এড়িয়ে চলে।
যদি একটি জাভাস্ক্রিপ্ট স্টেটমেন্ট এক লাইনে সম্পন্ন না হয় তবে অপারেটরের পরে পরবর্তী লাইনে চলে যাওয়া সবচেয়ে ভালো পদ্ধতিঃ
kt_satt_skill_example_id=808
এছাড়াও আপনি কোন স্ট্রিংয়ের টেক্সটের মাঝে একটি ব্যাকস্ল্যাশ ব্যবহার করে লাইন ব্রেক করতে পারেনঃ
kt_satt_skill_example_id=809
ব্যাকস্ল্যাশ মেথডটি ইকমাস্ক্রিপ্ট(জাভাস্ক্রিপ্ট) স্ট্যান্ডার্ড নয়।
কিছু ব্রাউজারে ব্যাকস্ল্যাশের(\) পরে স্পেস সাপোর্ট করে না।
স্ট্রিংকে ভাঙ্গার আরো একটি নিরাপদ পদ্ধতি হলো স্ট্রিংয়ের যোগ করাঃ
kt_satt_skill_example_id=810
আপনি ব্যাকস্ল্যাশ ব্যবহার করে কোডের মধ্যে লাইন ব্রেক করতে পারবেন নাঃ
kt_satt_skill_example_id=811
সাধারণত জাভাস্ক্রিপ্ট স্ট্রিং হলো প্রিমিটিভ ভ্যালু যা আক্ষরিকভাবে তৈরি করা হয়ঃ var a = "Tamim"
কিন্তু new কিওয়ার্ড দ্বারা স্ট্রিংকে অবজেক্টে হিসেবেও ডিফাইন করা যায়ঃvar b = new String("Tamim")
kt_satt_skill_example_id=812
স্ট্রিংকে অবজেক্ট হিসাবে তৈরি করবেন না। এটি এক্সিকিউশনের গতিকে ধীর করে দেবে।
new কিওয়ার্ড কোডকে জটিল করে। ইহা অপ্রত্যাশিত ফলাফল দেখাতে পারেঃ
যখন আমরা == অপারেটরটি ব্যবহার করবো,দুইটি স্ট্রিং সমান দেখায়ঃ
kt_satt_skill_example_id=813
যখন আমরা === অপারেটরটি ব্যবহার করবো, দুইটি স্ট্রিং সমান হবে না কারন === অপারেটরের ক্ষেত্রে মান এবং টাইপ উভয়ই একই হতে হবে।
kt_satt_skill_example_id=814
অবজেক্টকে তুলনা করা যাবে নাঃ
kt_satt_skill_example_id=815
স্ট্রিং মেথড আপনাকে স্ট্রিং নিয়ে কাজ করতে সাহায্য করবে।
প্রিমিটিভ(Primitive) ভ্যালুর, যেমন "Tamjid Hasan", কোন প্রোপার্টি বা মেথড থাকতে পারে না(কারন তারা অবজেক্ট নয়)।
length প্রোপার্টি স্ট্রিংটি কয়টি ক্যারেক্টার নিয়ে গঠিত তা রিটার্ন করেঃ
kt_satt_skill_example_id=831
indexOf() মেথডটি একটি স্ট্রিংয়ের মধ্যে একটি নির্দিষ্ট টেক্সটের প্রথম অবস্থান রিটার্ন করেঃ
kt_satt_skill_example_id=833
lastIndexOf() মেথডটি একটি স্ট্রিংয়ের মধ্যে একটি নির্দিষ্ট টেক্সটের শেষ অবস্থান রিটার্ন করেঃ
kt_satt_skill_example_id=835
যদি টেক্সটটি না পাওয়া যায় indexOf() এবং lastIndexOf() উভয় মেথডই -1 রিটার্ন করে।
জাভাস্ক্রিপ্টে স্ট্রিংয়ের অবস্থান শূন্য থেকে গণনা করা হয়।
স্ট্রিং-এ ০(শূন্য) হচ্ছে প্রথম অবস্থান, ১ হচ্ছে দ্বিতীয় অবস্থান আর ২ হচ্ছে তৃতীয় অবস্থান এবং এইভাবে চলতে থাকে।
উভয় মেথডই দ্বিতীয় একটি প্যারামিটার গ্রহণ করে।
search() মেথডটি একটি স্ট্রিংয়ের মধ্যে একটি নির্দিষ্ট ভ্যালু অনুসন্ধান করে এবং অনুসন্ধানকৃত ভ্যালুর অবস্থান রিটার্ন করেনঃ
kt_satt_skill_example_id=836
indexOf() এবং search() উভয় মেথড একই।
তারা উভয়ই একই আর্গুমেন্ট(arguments) বা প্যারামিটার ভ্যালু গ্রহন করে এবং একই মান রিটার্ন করে।
দুটি মেথড একই, কিন্তু search() মেথডটি অনেক বেশি শক্তিশালী।
আপনি অনুসন্ধান সম্পর্কে রেগুলার এক্সপ্রেশন(regular expressions) পরিচ্ছেদে আরো জানবেন।
স্ট্রিংয়ের একটি অংশকে বিভক্ত করার জন্য ৩টি মেথড রয়েছেঃ
slice() মেথডটি স্ট্রিংয়ের একটি অংশকে ভাগ করে এবং বিভক্ত অংশটিকে নতুন একটি স্ট্রিংয়ে রিটার্ন করে।
মেথডটি দুইটি প্যারামিটার গ্রহন করেঃ শুরুর অবস্থান(start index) এবং শেষের অবস্থান(end index)।
এই উদাহরণে একটি স্ট্রিংয়ের ৭ থেকে ১৩ অবস্থানের অংশটুকু ভাগ করে নেয়ঃ
kt_satt_skill_example_id=838
যদি কোন প্যারামিটারের মান ঋনাত্মক হয় তবে স্ট্রিংয়ের অবস্থান গণনা শেষ থেকে শুরু হবে।
এই উদাহরণে স্ট্রিংয়ের -১২ থেকে -৬ অংশটি ভাগ করা হবে। যেহেতু প্যারামিটারের মান ঋনাত্মক এটি স্ট্রিংয়ের শেষ থেকে গণনা শুরু করবে।
kt_satt_skill_example_id=840
আপনি যদি ২য় প্যারামিটারটি উল্লেখ না করেন তাহলে এটি প্রথম অবস্থান থেকে বাকী সম্পূর্ন অংশ ভাগ করবেঃ
kt_satt_skill_example_id=842
অথবা এটি শেষ থেকে গণনা করবেঃ
kt_satt_skill_example_id=844
ইন্টারনেট এক্সপ্লোরার ৮ এবং এর আগের ব্রাউজারগুলোতে প্যারামিটারের ঋনাত্মক মান কাজ করে না।
substring() মেথডটি slice() মেথডের মতই।
পার্থক্য হচ্ছে substring() মেথড ঋনাত্মক ইন্ডেক্স ভ্যালু গ্রহণ করে না।
kt_satt_skill_example_id=845
আপনি যদি ২য় প্যারামিটারটি উল্লেখ না করেন তাহলে substring() মেথড প্রথম অবস্থান থেকে বাকী সম্পূর্ন অংশ ভাগ করবে।
substr() মেথডটি slice() মেথডের মতই।
পার্থক্য হচ্ছে দ্বিতীয় প্যারামিটারটিতে কতটি ক্যারেক্টার ভাগ করতে চান তা উল্লেখ করতে হবে।
kt_satt_skill_example_id=847
যদি প্রথম প্যারামিটারের মান ঋনাত্মক হয় তাহলে স্ট্রিংয়ের শেষ প্রান্ত থেকে গণনা শুরু হয়।
২য় প্যারামিটারের মান কথনোই ঋনাত্মক হতে পারবে না কারন এটি দৈর্ঘ্য নির্দেশ করে।
আপনি যদি ২য় প্যারামিটারটি উল্লেখ না করেন তাহলে substr() মেথড বাকী সম্পূর্ন অংশ ভাগ করবে।
replace() মেথডটি স্ট্রিংয়ের নির্দিষ্ট একটি মানকে অন্য একটি ভ্যালু দ্বারা প্রতিস্থাপন করেঃ
kt_satt_skill_example_id=849
replace() মেথড অনুসন্ধান ভ্যালু হিসাবে রেগুলার এক্সপ্রেশনও নিতে পারে।
স্বাভাবিকভাবে replace() মেথডটি অনুসন্ধানকৃত অংশকে প্রথম যেখানে পাবে তাকেই প্রতিস্থাপন করবে। যদি সবগুলোকে প্রতিস্থাপন করতে চান সেক্ষেত্রে রেগুলার এক্সপ্রেশনের g ফ্ল্যাগ(গ্লোবাল সার্চের জন্য) ব্যবহার করতে হবেঃ
kt_satt_skill_example_id=854
replace() মেথডটি স্ট্রিংকে পরিবর্তন করে না।এটা নতুন একটি স্ট্রিং রিটার্ন করে।
একটি স্ট্রিংকে toUpperCase() মেথডের মাধ্যমে বড় হাতের অক্ষরে রূপান্তর করা হয়েছেঃ
kt_satt_skill_example_id=856
একটি স্ট্রিংকে toLowerCase() মেথডের মাধ্যমে ছোটহাতের অক্ষরে রূপান্তর করা হয়েছেঃ
kt_satt_skill_example_id=858
স্ট্রিং যোগ করার জন্য concat() মেথড ব্যবহার করা হয়ঃ
kt_satt_skill_example_id=859
concat() মেথডটি প্লাস(+) অপারেটরের পরিবর্তে ব্যবহার করা যেতে পারে। দুইটি লাইন একই কাজ করেঃ
kt_satt_skill_example_id=860
সকল স্ট্রিং মেথডই একটি নতুন স্ট্রিং রিটার্ন করে। তারা মূল স্ট্রিংকে পরিবর্তন করে না।
স্ট্রিং অপরিবর্তনীয়ঃ স্ট্রিংগুলো পরিবর্তন করা যাবে না শুধুমাত্র প্রতিস্থাপন করা যায়।
স্ট্রিং ক্যারেক্টারকে ভাগ করার দুইটি পদ্ধতি রয়েছেঃ
charAt() মেথডটি একটি স্ট্রিংয়ের একটি উল্লেখিত অবস্থানের(index) ক্যারেক্টারকে রিটার্ন করেঃ
kt_satt_skill_example_id=861
charCodeAt() মেথডটি একটি স্ট্রিংয়ের একটি উল্লেখিত অবস্থানের(index) ক্যারেক্টারের ইউনিকোড রিটার্ন করেঃ
kt_satt_skill_example_id=862
আপনি হয়তো স্ট্রিংকে অ্যারের মত করে এক্সেস করা দেখতে পারেনঃ
kt_satt_skill_example_id=863
ইহা বিপজ্জনক এবং অনিশ্চিত ফলাফল দেখাতে পারেঃ
যদি আপনি একটি স্ট্রিংকে অ্যারে আকারে পড়তে চান, প্রথমে একে অ্যারেতে রূপান্তর করুন।
split() মেথড ব্যবহার করে একটি স্ট্রিংকে অ্যারেতে রূপান্তরিত করা যেতে পারেঃ
kt_satt_skill_example_id=864
যদি বিভাজক বাদ দেওয়া হয়, তাহলে সম্পূর্ন স্ট্রিংটি অ্যারের ০ ইনডেক্সে রাখা হবে।
বিভাজক যদি "" হয়, তবে অ্যারের মধ্যে প্রতিটি ক্যারেক্টারকে ভিন্ন ইনডেক্সে রাখা হবেঃ
kt_satt_skill_example_id=865
সম্পূর্ণ রেফারেন্স জন্য আমাদের সম্পূর্ণ জাভাস্ক্রিপ্ট স্ট্রিং রেফারেন্সে যান।
রেফারেন্সে সকল স্ট্রিং প্রোপার্টি এবং মেথডের উদাহরণ রয়েছে।
একটি ভ্যারিয়েবলের মধ্যে অনেক ভ্যালু রাখার জন্য অ্যারে ব্যবহার করা হয়।
kt_satt_skill_example_id=873
অ্যারে একটি বিশেষ ভ্যারিয়েবল যা একসঙ্গে একাধিক মান ধারণ করতে পারে।
আপনার কাছে যদি একাধিক ভ্যালুর একটি লিস্ট থাকে(উদাহরণস্বরুপঃ স্যাট মেম্বারদের নামের লিস্ট) তাহলে সেগুলোকে আলাদা আলাদা ভ্যারিয়েবলের মধ্যে রাখলে নিচের মত দেখাবেঃ
kt_satt_skill_example_id=874
আপনার কাছে যদি ৩০০ মেম্বারের লিস্ট থাকে এবং লুপের মাধ্যমে একজন মেম্বারকে পেতে চান!
এর সমাধান হচ্ছে অ্যারে।
অ্যারে একই নামের অধীনে অনেক ভ্যালু রাখতে পারে এবং আপনি ইন্ডেক্স নম্বর ব্যবহার করে ভ্যালু এক্সেস করতে পারেন।
অ্যারে লিটারাল ব্যবহার জাভাস্ক্রিপ্ট অ্যারে তৈরি করার সবচেয়ে সহজ উপায়।
সিন্টেক্সঃ
kt_satt_skill_example_id=876
kt_satt_skill_example_id=878
অ্যারে ডিক্লেয়ারেশন একাধিক লাইনেও করা যায়ঃ
kt_satt_skill_example_id=879
শেষের এলিমেন্টের পরে কখনো কমা ব্যবহার করবেন না (যেমনঃ "Hen",) ।
নিম্নলিখিত উদাহরণেও একটি অ্যারে তৈরি করা হয়েছেঃ
kt_satt_skill_example_id=881
উপরে দুটি উদাহরণ একই কাজ করে। এখানে new array() ব্যবহার করার প্রয়োজন নেই।
সহজ, পাঠযোগ্যতা এবং এক্সিকিউশন গতির জন্য প্রথম পদ্ধতিটি ব্যবহার করুন।
আপনি ইন্ডেক্স নম্বর উল্লেখ করার মাধ্যমে একটি অ্যারে এলিমেন্ট নির্দেশ করতে পারেন। নিচের স্টেটমেন্টে satt অ্যারের তৃতীয় এলিমেন্টকে এক্সেস করা হয়েছেঃ
kt_satt_skill_example_id=882
এই স্টেটমেন্টে তৃতীয় এলিমেন্টকে পরিবর্তন করা হয়েছেঃ
kt_satt_skill_example_id=883
kt_satt_skill_example_id=884
একটি অ্যারের প্রথম এলিমেন্ট হচ্ছে [0], দ্বিতীয়টি হচ্ছে [1]। অ্যারের ইনডেক্স ০ দিয়ে শুরু হয়।
জাভাস্ক্রিপ্টে সম্পূর্ন অ্যারেকে এক্সেস করার জন্য শুধুমাত্র অ্যারের নাম লিখতে হয়ঃ
kt_satt_skill_example_id=885
অ্যারে স্পেশাল টাইপের অবজেক্ট। জাভাস্ক্রিপ্টের typeof অপারেটর অ্যারের ক্ষেত্রে object রিটার্ন করে।
কিন্তু, জাভাস্ক্রিপ্ট অ্যারেকে অ্যারে হিসেবে সবচেয়ে ভালো বর্ণনা করা যায়।
অ্যারে সংখ্যা ব্যবহার করে তার এলিমেন্টকে এক্সেস করে। এই উদাহরণে animals[1] দ্বারা অ্যারেকে এক্সেস করলে Tiger রিটার্ন করেঃ
kt_satt_skill_example_id=888
অবজেক্ট তার মেম্বারকে এক্সেস করার জন্য নাম ব্যবহার করে। এই উদাহরনে, member.firstName দ্বারা অবজেক্টকে এক্সেস করলে 'আজিজুর' রিটার্ন করেঃ
kt_satt_skill_example_id=889
জাভাস্ক্রিপ্ট ভ্যারিয়েবল অবজেক্ট হতে পারে। অ্যারে হচ্ছে স্পেশাল টাইপের অবজেক্ট।
এই কারনে, বিভিন্ন ধরনের ভ্যারিয়েবলকে একই অ্যারেতে রাখা যায়।
একটি অ্যারেতে আপনি অবজেক্ট, ফাংশন এবং অন্য একটি অ্যারেও রাখতে পারেনঃ
kt_satt_skill_example_id=890
জাভাস্ক্রিপ্ট অ্যারের সবচেয়ে শক্তিশালী দিক হচ্ছে এর বিল্ট-ইন প্রোপার্টি এবং মেথডঃ
kt_satt_skill_example_id=891
অ্যারে মেথড সম্পর্কে পরবর্তী পরিচ্ছেদে আরো ভালোভাবে আলোচনা করা হয়েছে।
length প্রোপার্টি একটি অ্যারের এলিমেন্টের সংখ্যা রিটার্ন করে।
kt_satt_skill_example_id=892
অ্যারেতে নতুন এলিমেন্ট যোগ করার সবচেয়ে সহজ পদ্ধতি হচ্ছে push মেথড ব্যবহার করাঃ
kt_satt_skill_example_id=895
length প্রোপার্টিও ব্যবহার করে অ্যারে তে নতুন প্রোপার্টি যোগ করা যায়ঃ
kt_satt_skill_example_id=896
kt_satt_skill_example_id=898
অ্যারে এলিমেন্টের মধ্যে লুপ করার জন্য একটি সবচেয়ে ভালো পদ্ধতি হচ্ছে "for" লুপ ব্যবহার করাঃ
kt_satt_skill_example_id=899
অ্যারের ইনডেক্সিং নাম দিয়ে অনেক প্রোগ্রামিং ল্যাংগুয়েজে সাপোর্ট করে।
যেসকল অ্যারের ইনডেক্স নাম দিয়ে করা হয় তাদেরকে অ্যাসোসিয়েটিভ অ্যারে বলে।
জাভাস্ক্রিপ্টে এটা সাপোর্ট করে না।
জাভাস্ক্রিপ্টে, অ্যারে সবসময় নম্বর ইনডেক্স ব্যবহার করে।
kt_satt_skill_example_id=900
সতর্কবাণী!!!
আপনি যদি ইনডেক্সিং-এ নাম ব্যবহার করেন জাভাস্ক্রিপ্ট অ্যারেকে স্ট্যান্ডার্ড অবজেক্ট হিসেবে পুনরায় ডিফাইন করে। তখন সকল অ্যারে মেথড এবং প্রোপার্টি ভুল ফলাফল দেখায়।
kt_satt_skill_example_id=901
জাভাস্ক্রিপ্টে, অ্যারে নম্বর ইনডেক্স ব্যবহার করে।
জাভাস্ক্রিপ্টে, অবজেক্ট নাম ইনডেক্স ব্যবহার করে।
অ্যারে হচ্ছে একটি স্পেশাল অবজেক্ট যা নম্বর ইনডেক্স ব্যবহার করে।
এখানে জাভাস্ক্রিপ্টের বিল্ট-ইন অ্যারে কনস্ট্রাক্টর new Array() প্রয়োজন নেই।
এর পরিবর্তে [] ব্যবহার করুন।
এই দুইটি ভিন্ন স্টেটমেন্টই points নামের নতুন অ্যারে তৈরি করেছেঃ
kt_satt_skill_example_id=902
এই দুইটি ভিন্ন স্টেটমেন্টই ৬ সংখ্যার একটি নতুন অ্যারে তৈরি করেঃ
kt_satt_skill_example_id=903
new কিওয়ার্ড কোডকে জটিল করে তুলে। এটি অপ্রত্যাশিত ফলাফল দেখাতে পারেঃ
kt_satt_skill_example_id=904
যদি একটি এলিমেন্ট বাদ দেই?
kt_satt_skill_example_id=906
একটি সাধারণ প্রশ্ন হলোঃ একটি ভ্যারিয়েবল অ্যারে কিনা কিভাবে বুঝবো?
সমস্যা হচ্ছে জাভাস্ক্রিপ্টের typeof অপারেটর "object" রিটার্ন করেঃ
kt_satt_skill_example_id=907
typeof অপারেটর অবজেক্ট রিটার্ন করে কারন জাভাস্ক্রিপ্ট অ্যারে একটি অবজেক্ট।
এই সমস্যা দূর করার জন্য ECMAScript 5 একটি নতুন মেথড Array.isArray() নির্ধারন করেঃ
kt_satt_skill_example_id=909
এই সমাধানের একটি সমস্যা রয়েছে, পুরাতন ব্রাউজারে ECMAScript 5 সাপোর্ট করে না।
এই সমস্যা দূর করার জন্য আপনি একটি isArray() ফাংশন তৈরি করে নিতে পারেনঃ
kt_satt_skill_example_id=911
যদি আর্গুমেন্ট একটি অ্যারে হয় তাহলে উপরের ফাংশনটি সব সময় true রিটার্ন করবে।
যদি একটি অবজেক্ট কনস্ট্রাক্টরের মাধ্যমে তৈরি হয় তাহলে instanceof অপারেটর true রিটার্ন করেঃ
kt_satt_skill_example_id=912
জাভাস্ক্রিপ্ট অ্যারের মূল শক্তি হলো অ্যারে মেথড।
জাভাস্ক্রিপ্ট toString () মেথডটি অ্যারে থেকে স্ট্রিং-এ রূপান্তর করে।
kt_satt_skill_example_id=924
join() মেথড সকল অ্যারে এলিমেন্টকে একটি স্ট্রিং-এ যুক্ত করে।
এটা toString() এর মত কাজ করেঃ
kt_satt_skill_example_id=926
অ্যারে নিয়ে কাজ করার সময় খুব সহজেই এলিমেন্ট বাদ দিতে এবং নতুন এলিমেন্ট যোগ করতে পারবেন।
pop() মেথড দিয়ে অ্যারে থেকে এলিমেন্ট বাদ দেয়া হয় এবং push() মেথড দিয়ে অ্যারেতে এলিমেন্ট যোগ করা হয়।
pop() মেথড দিয়ে অ্যারের শেষ এলিমেন্ট বাদ দেয়া হয়ঃ
kt_satt_skill_example_id=927
pop() মেথড বাদ দেওয়া ভ্যালুকে রিটার্ন করেঃ
kt_satt_skill_example_id=929
push() মেথড দ্বারা একটি অ্যারের শেষে নতুন এলিমেন্ট যুক্ত করা হয়ঃ
kt_satt_skill_example_id=931
push() মেথড অ্যারে এর নতুন দৈর্ঘ্য রিটার্ন করেঃ
kt_satt_skill_example_id=933
shift() মেথড এবং pop() মেথড একই রকম কাজ করে, শুধুমাত্র শেষের এলিমেন্টের পরিবর্তে প্রথম এলিমেন্টকে বাদ দেয়ঃ
shift() মেথড অ্যারের প্রথম এলিমেন্ট বাদ দেয় এবং সকল এলিমেন্টের ইনডেক্স কমিয়ে দেয়ঃ
kt_satt_skill_example_id=935
unshift() মেথড অ্যারের শুরুতে একটি নতুন এলিমেন্ট যুক্ত করেঃ
kt_satt_skill_example_id=936
unshift() মেথড অ্যারের নতুন দৈর্ঘ্য রিটার্ন করে।
অ্যারে এলিমেন্ট ইনডেক্স নম্বর ব্যবহার করে এক্সেস করা হয়ঃ
অ্যারে ইনডেক্স ০ দিয়ে শুরু হয়, [০] হচ্ছে অ্যারের প্রথম এলিমেন্ট, [১] হচ্ছে দ্বিতীয়, [২] হচ্ছে তৃতীয়...
kt_satt_skill_example_id=937
অ্যারেতে নতুন এলিমেন্ট যোগ করার আরেকটি সহজ পদ্ধতি হচ্ছে length প্রোপার্টি ব্যবহার করাঃ
kt_satt_skill_example_id=938
যেহেতু জাভাস্ক্রিপ্ট অ্যারে একটি অবজেক্ট, তাই জাভাস্ক্রিপ্ট delete অপারেটর ব্যবহার করে অ্যারের এলিমেন্ট ডিলেট করা যায়ঃ
kt_satt_skill_example_id=940
splice() মেথড একটি অ্যারেতে নতুন এলিমেন্ট যোগ করার জন্য ব্যবহার করা হয়ঃ
kt_satt_skill_example_id=941
প্রথম প্যারামিটারে এলিমেন্টের ইনডেক্স নম্বর নির্ধারন করা হয় যেখানে এলিমেন্টকে রাখা হবে।
দ্বিতীয় প্যারামিটারে কতটি এলিমেন্ট বাদ দেওয়া হবে তা নির্দেশ করা হয়।
বুদ্ধিমত্তার সাথে প্যারামিটার সেটিং-এর মাধ্যমে আপনি splice() মেথড ব্যবহার করে অ্যারের "undefined" এঁরর ছাড়াই এলিমেন্ট বাদ দিতে পারবেনঃ
kt_satt_skill_example_id=943
প্রথম প্যারামিটারে এলিমেন্টের ইনডেক্স নম্বর নির্ধারন করা হয় যেখানে এলিমেন্টকে রাখা হবে।
দ্বিতীয় প্যারামিটারে কতটি এলিমেন্ট বাদ দেওয়া হবে তা নির্দেশ করা হয়।
বাকি প্যারামিটার বাদ দেওয়া হয়েছে। তার মানে নতুন কোন এলিমেন্ট যোগ করা হবে না।
concat() মেথড দুইটি অ্যারেকে যুক্ত করে একটি নতুন অ্যারে তৈরি করেঃ
kt_satt_skill_example_id=945
concat() মেথড আর্গুমেন্ট হিসেবে একাধিক অ্যারেও নিতে পারেঃ
kt_satt_skill_example_id=946
slice() মেথড একটি অ্যারের অংশকে আলাদা করে নতুন একটি অ্যারে তৈরি করে।
এই উদাহরণে একটি অ্যারের প্রথম এলিমেন্ট("Lion") থেকে আলাদা করে।
kt_satt_skill_example_id=947
slice() মেথড একটি নতুন অ্যারে তৈরী করে। এটি সোর্স অ্যারে থেকে কোনো এলিমেন্ট বাদ দেয় না।
slice() মেথড দুইটি আর্গুমেন্টও নিতে পারেঃ
kt_satt_skill_example_id=949
যদি শেষ আর্গুমেন্ট না দেওয়া হয় তাহলে slice() মেথড অ্যারের বাকি এলিমেন্টকে আলাদা করে নেয়।
kt_satt_skill_example_id=952
valueOf() মেথড অ্যারের একটি ডিফল্ট মেথড। এটি একটি অ্যারেকে প্রিমিটিভ ভ্যালুতে রুপান্তর করে।
যখন একটি প্রিমিটিভ ভ্যালুর দরকার হয় জাভাস্ক্রিপ্ট স্বয়ংক্রিয়ভাবে একটি অ্যারেকে একটি স্ট্রিং-এ রূপান্তর করে।
এই কারণে, নিচের সকল উদাহরণ একই ফলাফল দেখায়ঃ
kt_satt_skill_example_id=953
সকল জাভাস্ক্রিপ্ট অবজেক্টের একটি valueOf() এবং একটি toString() মেথড আছে।
অ্যারে শ্রেণীবদ্ধকরণ পরবর্তী পরিচ্ছেদে আলোচনা করা হয়েছে।
সম্পূর্ণ অ্যারে রেফারেন্সের জন্য আমাদের সম্পুর্ণ জাভাস্ক্রিপ্ট অ্যারে রেফারেন্স পড়ুন।
sort() মেথড একটি শক্তিশালী অ্যারে মেথড।
sort() মেথড অ্যারেকে বর্ণানুক্রমে সাজায়ঃ
kt_satt_skill_example_id=986
reverse() মেথডটি একটি অ্যারের এলিমেন্টকে উল্টোভাবে(reverse) সাজায়ঃ
একটি অ্যারেকে অধোগামীক্রমে(Descending order) সাজানোর জন্য এটা ব্যবহার করতে পারেনঃ
kt_satt_skill_example_id=959
ডিফল্টভাবে sort() ফাংশনটি ভ্যালুকে স্ট্রিং আকারে সাজায়।
যদি সংখ্যাকে স্ট্রিং হিসেবে সাজানো হয়,তাহলে "30" এর তুলনায় "112" ছোট, কারন "3" এর চেয়ে "1" ছোট।
এই কারনে, sort() মেথডে সংখ্যা ব্যবহার করলে ভুল ফলাফল দেখাবে।
আপনি একটি ফাংশন ব্যবহার করে এটি ঠিক করতে পারেনঃ
kt_satt_skill_example_id=960
অ্যারেকে উল্টোভাবে সাজাতে এটি ব্যবহার করুনঃ
kt_satt_skill_example_id=961
এই ফাংশনের কাজ হচ্ছে সাজানোর একটি বিকল্প পদ্ধতি ডিফাইন করা।
আর্গুমেন্টের উপর নির্ভর করে এই ফাংশন ঋনাত্মক, শূণ্য অথবা ধনাত্মক ভ্যালু রিটার্ন করেঃ
kt_satt_skill_example_id=963
যখন sort() ফাংশনটি দুইটি ভ্যালুর তুলনা করে, তখন এটি তার অভ্যন্তরীণ ফাংশনে ভ্যালু দুইটি পাঠায় এবং sort() ফাংশন রিটার্ন ভ্যালু অনুসারে(ঋনাত্মক,শূণ্য, ধনাত্মক) ভ্যালুকে সাজায়।
উদাহরণ
যখন 30 এবং 112 এর মধ্যে তুলনা করা হয়, তখন sort() মেথডটি ফাংশনকে কল করে।
ফাংশনটি 30-112 কে হিসাব করে এবং -82 রিটার্ন করে(নেগেটিভ ভ্যালু)।
sort ফাংশনটি 30 কে 112 এর চেয়ে ছোট ভ্যালু হিসেবে সাজায়।
আপনি সংখ্যায় এবং বর্ণানুক্রমিকভাবে সাজাতে এই কোডগুলো ব্যবহার করতে পারেনঃ
kt_satt_skill_example_id=965
kt_satt_skill_example_id=966
kt_satt_skill_example_id=968
কিভাবে অ্যারেতে সর্বোচ্চ ভ্যালু খুঁজবেন?
kt_satt_skill_example_id=970
জাভাস্ক্রিপ্ট অ্যারেতে অবজেক্টও থাকতে পারেঃ
kt_satt_skill_example_id=972
যদি অবজেক্টে বিভিন্ন ধরনের ডাটা টাইপের প্রোপার্টি থাকে, sort() মেথড দিয়ে অ্যারেকে সাজাতে ব্যবহার করা যায়।
শুধু প্রোপার্টি ভ্যালুকে তুলনা করতে একটি ফাংশন লিখতে হয়ঃ
kt_satt_skill_example_id=974
স্ট্রিং প্রোপার্টির তুলনা একটু বেশি জটিলঃ
kt_satt_skill_example_id=975
আরও দেখুন...